package com.ruoyi.fire.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.fire.domain.TBuilding;

/**
 * 建筑物Service接口
 *
 * @author ruoyi
 * @date 2025-11-02
 */
public interface ITBuildingService extends IService<TBuilding> {
    /**
     * 查询建筑物
     *
     * @param id 建筑物主键
     * @return 建筑物
     */
    public TBuilding selectTBuildingById(String id);

    /**
     * 查询建筑物列表
     *
     * @param tBuilding 建筑物
     * @return 建筑物集合
     */
    public List<TBuilding> selectTBuildingList(TBuilding tBuilding);

    /**
     * 新增建筑物
     *
     * @param tBuilding 建筑物
     * @return 结果
     */
    public boolean insertTBuilding(TBuilding tBuilding);

    /**
     * 修改建筑物
     *
     * @param tBuilding 建筑物
     * @return 结果
     */
    public int updateTBuilding(TBuilding tBuilding);

    /**
     * 批量删除建筑物
     *
     * @param ids 需要删除的建筑物主键集合
     * @return 结果
     */
    public int deleteTBuildingByIds(String[] ids);

    /**
     * 删除建筑物信息
     *
     * @param id 建筑物主键
     * @return 结果
     */
    public int deleteTBuildingById(String id);

    /**
     * 同步单位信息
     *
     * @param id 单位信息主键
     * @return 结果
     */
    boolean pushTUnit(String id);

    /**
     * 远程删除建筑物
     *
     * @param buildingId 建筑物信息主键
     * @return 删除结果
     */
    boolean remoteDeletion(String buildingId);

    /**
     * 先删除远程在删除本地信息
     *
     * @param buildingId 建筑物信息主键
     * @return 删除结果
     */
    int removeByBuildingId(String buildingId);
}
